Spring Security Auto Configuration 끄기
✒️ 2025-05-28 14:09 내용 수정
- 참고 자료 : Jeongjin kim's Spring Boot Security Auto Configuration 끄기, baeldung's Spring Boot Security Auto-Configuration
- 방법 1 : Spring boot에서 Security의 기본 설정을 끌 때
SpringBootApplication(프로젝트의 Application 클래스)에 아래exclude구문을 추가한다.
@SpringBootApplication(exclude = { SecurityAutoConfiguration.class })
public class SpringBootSecurityApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootSecurityApplication.class, args);
}
}
- 방법 2 :
application.properties혹은application.yml파일에 아래의autoconfigure설정 구문을 추가한다.
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration
- 자료들에 따르면 이런 방법으로 기본 설정을 해제할 경우
WebSecurity설정에서@EnableWebSecurityAnnotation을 필수로 사용해야 하고, Security 설정을 모두 개발자가 직접 해야 하는 등의 문제가 발생할 수 있다고 한다.- 다른 클래스가 위의 AutoConfiguration 클래스를 필요로 할 수 있어 애플리케이션 실행에 문제가 생길 수 있다.
- 커스텀 Security Provider를 사용하는 다른 애플리케이션과 Security 통합을 하거나 레거시 Spring 애플리케이션을 Spring boot로 옮기는 작업에선 AutoConfiguration을 끄는 것이 도움이 될 수 있다.
- 그러나 대부분의 경우 AutoConfiguration의 모든 부분을 끌 필요가 없다.
- 따라서 기능을 정지하는 것 보다는 사용자의 설정을 기본 설정보다 우선시하도록 설정하는 방법이 유용하다고 한다.